import requests
import re
#方法修改自_3_Requests.py
#2021-04-18 23:01
#至于这些图片网站，可以先去image.baidu.com上搜刮一下，以后再针对百度图片进行爬虫。
url="http://www.jj20.com/"
#使用F12->Network->IMG可以查看到网站是GET还是POST
#按照上一行显示出来的东西进行服务器请求头文件的编写
headers={"user-Agent":"Mozilla/5.0 (X11; CrOS armv7l 13597.84.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.187 Safari/537.36",
         "referer":"http://www.jj20.com",
         "connection":"keep-alive"}
urlFile="_4_jj20.txt"
r=requests.get(url,headers=headers)
f=open(urlFile,"wb")
#r.content获取响应内容（字节流）
f.write(r.content)
f.close()
#按照图片格式编写需要爬取的正则表达式
pttn="\S*.jpg"
f=open(urlFile,"r",encoding="gb2312")
txt=f.read()
print(txt)
pngResult=re.findall(pttn,txt)#这个re出来的东西本身就是个List
f.close()

print('pngResult=',pngResult,'\n','pngResult个数为：',len(pngResult),'\n',str(pngResult))
#以上为第一部分，下方为第二部分
#第一部分先写完，并查看运行效果，然后开始写第二部分的正则表达式。
#开始编写想要最终爬取的图片的网站的格式，并输出到文件夹中
pttn2="(https?\:\/\/img.jj20.com\/up\/img\S*.jpg)"
httpsResult=re.findall(pttn2,str(pngResult))
print(httpsResult,'\n')

for i in range(len(httpsResult)):
    print(f"pic{i} is ok.",'\n')
    url=httpsResult[i]
    r=requests.get(url)
    f=open(f"/home/pi/Python/实战python爬虫/aboutUrllib/_4_pic/python{i}.jpg","wb")
    #r.content获取响应内容（字节流）
    f.write(r.content)
    f.close()
